x86: don't disable MSI in order to mask an IRQ
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 13 Nov 2008 16:31:08 +0000 (16:31 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 13 Nov 2008 16:31:08 +0000 (16:31 +0000)
commitf250210b16f0b955e1b47e451de3c3ab8fc484e3
treecdf1f0deab2469d7bfcee24ad705425bda3321a9
parentf49717baeabf71c2e93ad7bac0c5989a6cf37354
x86: don't disable MSI in order to mask an IRQ

... as that's not really correct, and there are devices which can't
even cope with that. Instead, check whether an MSI IRQ can be masked,
and if it can't, treat it just like a level triggered IO-APIC IRQ.

There's one other bug fix in here, correcting an off-by-one error on
the entry_nr range check in __pci_enable_msix().

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen/arch/x86/irq.c
xen/arch/x86/msi.c
xen/include/asm-x86/msi.h